# frame切换
"""
frame：HTML页面中的一种框架，主要作用是在当前页面中指定区域显示另一页面元素；
形式一：[了解]
<frameset cols="25%,75%">
<frame src="frame_a.htm">
<frame src="frame_b.htm">
</frameset>
形式二：
<iframe name="iframe_a" src="demo_iframe.htm" width="200" height="200"></iframe>
"""

# 案例：打开‘注册实例.html’页面，完成以下操作
# 1). 填写主页面的注册信息
# 2). 填写注册页面A中的注册信息
# 3). 填写注册页面B中的注册信息
import time

from selenium import webdriver
from selenium.webdriver import ActionChains
driver = webdriver.Chrome()
# 2.输入访问地址（URL）
# url = r"C:\Users\HP\Desktop\UI自动化测试\注册实例.html";
# driver.get(url)
# 打开‘注册实例.html’页面
driver.get(r"C:\Users\19004\PycharmProjects\UI自动化测试\注册实例.html")

# 1). 填写主页面的注册信息
# 填写用户名
driver.find_element_by_css_selector("#user").send_keys("admin")
# 填写密码
driver.find_element_by_css_selector("#password").send_keys("123456")
# 填写电话号码
driver.find_element_by_css_selector("#tel").send_keys("13207824014")
# 填写电子邮箱
driver.find_element_by_css_selector("#email").send_keys("132072205@qq.com")

time.sleep(3)

# 2). 填写注册页面A中的注册信息
# 先切换到注册页面A，使用切换方法
# driver.switch_to.frame("myframe1")  # 使用name切换
driver.switch_to.frame("idframe1")  # 使用id切换
# 2). 填写注册页面A中的注册信息
# 用户名
driver.find_element_by_css_selector("#userA").send_keys("1111")
# # 密码
driver.find_element_by_css_selector("#passwordA").send_keys("123456")
# 电话号码
driver.find_element_by_css_selector("#telA").send_keys("13012345678")
# 电子邮件
driver.find_element_by_css_selector("#emailA").send_keys("123@qq.com")



# 3. 调用恢复默认页面方法(switch_to.default_content())
driver.switch_to.default_content()
# 4. 调用frame切换方法(switch_to.frame("myframe2"))切换到注册用户B框架中
#切换到注册B页面 使用name
driver.switch_to.frame("myframe2")
# 2). 填写注册页面B中的注册信息
# 用户名
driver.find_element_by_css_selector("#userB").send_keys("1111")
# # 密码
driver.find_element_by_css_selector("#passwordB").send_keys("123456")
# 电话号码
driver.find_element_by_css_selector("#telB").send_keys("13012345678")
# 电子邮件
driver.find_element_by_css_selector("#emailB").send_keys("123@qq.com")

time.sleep(3)
driver.quit()
